/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package view;

import model.User;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.regex.Pattern;
import javax.swing.JOptionPane;

/**
 * Classe representant le listener du bouton de connection
 * @author Lefevre, Thoue
 */
public class ConnectListenner implements ActionListener {

    private Fenetre fenetre;
    private ConnectFrame connectFrame;
    /**
     * Constructeur
     * @param fenetre lien vers la fenetre principal
     * @param connectFrame lien vers la fenetre de connection
     */
    public ConnectListenner(Fenetre fenetre, ConnectFrame connectFrame) {
        this.fenetre = fenetre;
        this.connectFrame = connectFrame;
    }
    /**
     * Action du clique du bouton connection
     * @param e evenement du bouton
     */
    @Override
    public void actionPerformed(ActionEvent e) {
        if (!connectFrame.getFieldNom().getText().isEmpty()
                && !connectFrame.getFieldPrenom().getText().isEmpty()
                && Pattern.matches("^\\d*$", connectFrame.getFieldPort().getText())) {
            fenetre.setVisible(true);
            connectFrame.setVisible(false);
            fenetre.getControleur().setCurrentUser(new User(connectFrame.getFieldNom().getText(), connectFrame.getFieldPrenom().getText(), connectFrame.getIpList().getSelectedItem().toString(), Integer.valueOf(connectFrame.getFieldPort().getText())));
            fenetre.getControleur().ecouterDemandeDeConversation();
        }else{
            JOptionPane.showMessageDialog(fenetre,"Veuillez rentrer votre nom et prénom ainsi qu'un port d'écoute correct.");
        }
    }
}
